home *** CD-ROM | disk | FTP | other *** search
/ Aminet 41 / Aminet 41 (2001)(Schatztruhe)[!][Feb 2001].iso / Aminet / dev / c / libiconv_src.lha / src / aliases.h < prev    next >
Encoding:
C/C++ Source or Header  |  2000-11-07  |  25.6 KB  |  740 lines

  1. /* ANSI-C code produced by gperf version 2.7.2 */
  2. /* Command-line: gperf -t -L ANSI-C -H aliases_hash -N aliases_lookup -7 -C -k '1,3-11,$' -i 1 src/aliases.gperf  */
  3. struct alias { const char* name; unsigned int encoding_index; };
  4.  
  5. #define TOTAL_KEYWORDS 295
  6. #define MIN_WORD_LENGTH 2
  7. #define MAX_WORD_LENGTH 45
  8. #define MIN_HASH_VALUE 8
  9. #define MAX_HASH_VALUE 2175
  10. /* maximum key range = 2168, duplicates = 0 */
  11.  
  12. #ifdef __GNUC__
  13. __inline
  14. #else
  15. #ifdef __cplusplus
  16. inline
  17. #endif
  18. #endif
  19. static unsigned int
  20. aliases_hash (register const char *str, register unsigned int len)
  21. {
  22.   static const unsigned short asso_values[] =
  23.     {
  24.       2176, 2176, 2176, 2176, 2176, 2176, 2176, 2176, 2176, 2176,
  25.       2176, 2176, 2176, 2176, 2176, 2176, 2176, 2176, 2176, 2176,
  26.       2176, 2176, 2176, 2176, 2176, 2176, 2176, 2176, 2176, 2176,
  27.       2176, 2176, 2176, 2176, 2176, 2176, 2176, 2176, 2176, 2176,
  28.       2176, 2176, 2176, 2176, 2176,    1,   56, 2176,   41,   56,
  29.         26,  246,  426,  106,   86,  231,    1,  501,   16, 2176,
  30.       2176, 2176, 2176, 2176, 2176,   21,  252,  241,   39,    1,
  31.         91,  317,   76,    1,  111,   21,  418,   16,    6,    1,
  32.          6, 2176,   14,    1,    1,  346,  146,    1,  346,   16,
  33.          1, 2176, 2176, 2176, 2176,  492, 2176, 2176, 2176, 2176,
  34.       2176, 2176, 2176, 2176, 2176, 2176, 2176, 2176, 2176, 2176,
  35.       2176, 2176, 2176, 2176, 2176, 2176, 2176, 2176, 2176, 2176,
  36.       2176, 2176, 2176, 2176, 2176, 2176, 2176, 2176
  37.     };
  38.   register int hval = len;
  39.  
  40.   switch (hval)
  41.     {
  42.       default:
  43.       case 11:
  44.         hval += asso_values[(unsigned char) str[10]];
  45.       case 10:
  46.         hval += asso_values[(unsigned char) str[9]];
  47.       case 9:
  48.         hval += asso_values[(unsigned char) str[8]];
  49.       case 8:
  50.         hval += asso_values[(unsigned char) str[7]];
  51.       case 7:
  52.         hval += asso_values[(unsigned char) str[6]];
  53.       case 6:
  54.         hval += asso_values[(unsigned char) str[5]];
  55.       case 5:
  56.         hval += asso_values[(unsigned char) str[4]];
  57.       case 4:
  58.         hval += asso_values[(unsigned char) str[3]];
  59.       case 3:
  60.         hval += asso_values[(unsigned char) str[2]];
  61.       case 2:
  62.       case 1:
  63.         hval += asso_values[(unsigned char) str[0]];
  64.         break;
  65.     }
  66.   return hval + asso_values[(unsigned char) str[len - 1]];
  67. }
  68.  
  69. #ifdef __GNUC__
  70. __inline
  71. #endif
  72. const struct alias *
  73. aliases_lookup (register const char *str, register unsigned int len)
  74. {
  75.   static const struct alias wordlist[] =
  76.     {
  77.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  78.       {"SJIS", ei_sjis},
  79.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  80.       {"R8", ei_hp_roman8},
  81.       {""}, {""}, {""}, {""}, {""}, {""}, {""},
  82.       {"MS-EE", ei_cp1250},
  83.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  84.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  85.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  86.       {""},
  87.       {"MS-ANSI", ei_cp1252},
  88.       {""}, {""}, {""},
  89.       {"KOI8-R", ei_koi8_r},
  90.       {""}, {""}, {""}, {""}, {""}, {""},
  91.       {"ROMAN8", ei_hp_roman8},
  92.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  93.       {"KOREAN", ei_ksc5601},
  94.       {""}, {""}, {""},
  95.       {"HZ", ei_hz},
  96.       {""}, {""}, {""}, {""}, {""}, {""},
  97.       {"850", ei_cp850},
  98.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  99.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  100.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  101.       {""}, {""}, {""}, {""}, {""},
  102.       {"JP", ei_iso646_jp},
  103.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  104.       {""}, {""}, {""}, {""}, {""}, {""}, {""},
  105.       {"ISO-IR-58", ei_gb2312},
  106.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  107.       {"HP-ROMAN8", ei_hp_roman8},
  108.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  109.       {""}, {""}, {""}, {""}, {""},
  110.       {"ECMA-118", ei_iso8859_7},
  111.       {""},
  112.       {"TCVN", ei_tcvn},
  113.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  114.       {""}, {""}, {""},
  115.       {"866", ei_cp866},
  116.       {""}, {""}, {""}, {""}, {""}, {""},
  117.       {"ISO-2022-KR", ei_iso2022_kr},
  118.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  119.       {""}, {""}, {""}, {""}, {""}, {""},
  120.       {"ISO-IR-6", ei_ascii},
  121.       {""}, {""},
  122.       {"TIS620", ei_tis620},
  123.       {""},
  124.       {"TIS-620", ei_tis620},
  125.       {""}, {""}, {""},
  126.       {"ISO-IR-100", ei_iso8859_1},
  127.       {""}, {""}, {""},
  128.       {"IBM850", ei_cp850},
  129.       {""}, {""}, {""}, {""}, {""},
  130.       {"SHIFT-JIS", ei_sjis},
  131.       {""}, {""}, {""}, {""},
  132.       {"ISO-IR-110", ei_iso8859_4},
  133.       {""}, {""}, {""}, {""}, {""},
  134.       {"JIS0208", ei_jisx0208},
  135.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  136.       {"ISO-IR-101", ei_iso8859_2},
  137.       {""}, {""}, {""}, {""}, {""}, {""}, {""},
  138.       {"TIS620-0", ei_tis620},
  139.       {""}, {""},
  140.       {"CN", ei_iso646_cn},
  141.       {"EUCTW", ei_euc_tw},
  142.       {"WINDOWS-1258", ei_cp1258},
  143.       {"EUC-TW", ei_euc_tw},
  144.       {"ISO-IR-226", ei_iso8859_16},
  145.       {""}, {""}, {""},
  146.       {"ISO-2022-JP", ei_iso2022_jp},
  147.       {""},
  148.       {"CHINESE", ei_gb2312},
  149.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  150.       {""},
  151.       {"ASCII", ei_ascii},
  152.       {""}, {""}, {""}, {""}, {""},
  153.       {"WINDOWS-1252", ei_cp1252},
  154.       {""}, {""},
  155.       {"ISO-2022-JP-2", ei_iso2022_jp2},
  156.       {""}, {""},
  157.       {"IBM866", ei_cp866},
  158.       {"ISO-IR-126", ei_iso8859_7},
  159.       {""}, {""}, {""}, {""}, {""}, {""}, {""},
  160.       {"WINDOWS-1250", ei_cp1250},
  161.       {""},
  162.       {"ARMSCII-8", ei_armscii_8},
  163.       {""}, {""},
  164.       {"EUCKR", ei_euc_kr},
  165.       {""},
  166.       {"EUC-KR", ei_euc_kr},
  167.       {""},
  168.       {"CSKOI8R", ei_koi8_r},
  169.       {""}, {""},
  170.       {"JAVA", ei_java},
  171.       {""}, {""},
  172.       {"WINDOWS-1251", ei_cp1251},
  173.       {""}, {""},
  174.       {"ISO-2022-JP-1", ei_iso2022_jp1},
  175.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  176.       {""}, {""},
  177.       {"ASMO-708", ei_iso8859_6},
  178.       {""}, {""}, {""}, {""}, {""}, {""}, {""},
  179.       {"MACROMAN", ei_mac_roman},
  180.       {""}, {""}, {""},
  181.       {"ISO-IR-138", ei_iso8859_8},
  182.       {""}, {""},
  183.       {"WINDOWS-1256", ei_cp1256},
  184.       {""}, {""}, {""}, {""}, {""}, {""},
  185.       {"ISO-IR-166", ei_tis620},
  186.       {""}, {""}, {""}, {""},
  187.       {"GREEK8", ei_iso8859_7},
  188.       {"US", ei_ascii},
  189.       {""},
  190.       {"HEBREW", ei_iso8859_8},
  191.       {""}, {""}, {""}, {""},
  192.       {"WINDOWS-1255", ei_cp1255},
  193.       {""}, {""}, {""}, {""}, {""},
  194.       {"GBK", ei_ces_gbk},
  195.       {""},
  196.       {"MACTHAI", ei_mac_thai},
  197.       {""},
  198.       {"GREEK", ei_iso8859_7},
  199.       {""},
  200.       {"MACROMANIA", ei_mac_romania},
  201.       {""},
  202.       {"EUCJP", ei_euc_jp},
  203.       {""},
  204.       {"EUC-JP", ei_euc_jp},
  205.       {""}, {""}, {""},
  206.       {"NEXTSTEP", ei_nextstep},
  207.       {""}, {""}, {""}, {""},
  208.       {"MS-HEBR", ei_cp1255},
  209.       {""},
  210.       {"ISO-IR-165", ei_isoir165},
  211.       {""}, {""},
  212.       {"ISO-2022-CN-EXT", ei_iso2022_cn_ext},
  213.       {"ISO-2022-CN", ei_iso2022_cn},
  214.       {""}, {""}, {""}, {""}, {""},
  215.       {"CSHPROMAN8", ei_hp_roman8},
  216.       {""}, {""}, {""},
  217.       {"VISCII", ei_viscii},
  218.       {""}, {""},
  219.       {"MS-GREEK", ei_cp1253},
  220.       {""}, {""}, {""}, {""},
  221.       {"UCS-2", ei_ucs2},
  222.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  223.       {""}, {""}, {""}, {""}, {""},
  224.       {"X0208", ei_jisx0208},
  225.       {"L8", ei_iso8859_14},
  226.       {""},
  227.       {"CSISO2022KR", ei_iso2022_kr},
  228.       {""}, {""}, {""},
  229.       {"MS-TURK", ei_cp1254},
  230.       {"MACINTOSH", ei_mac_roman},
  231.       {""}, {""}, {""}, {""}, {""},
  232.       {"LATIN8", ei_iso8859_14},
  233.       {"CP850", ei_cp850},
  234.       {""},
  235.       {"CP1258", ei_cp1258},
  236.       {""}, {""}, {""}, {""}, {""}, {""}, {""},
  237.       {"UTF-8", ei_utf8},
  238.       {"L2", ei_iso8859_2},
  239.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  240.       {""}, {""}, {""}, {""}, {""}, {""},
  241.       {"UCS-2-SWAPPED", ei_ucs2swapped},
  242.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  243.       {""}, {""}, {""}, {""},
  244.       {"L1", ei_iso8859_1},
  245.       {""}, {""}, {""}, {""},
  246.       {"WINDOWS-1257", ei_cp1257},
  247.       {""}, {""},
  248.       {"LATIN2", ei_iso8859_2},
  249.       {"X0212", ei_jisx0212},
  250.       {""},
  251.       {"CP1252", ei_cp1252},
  252.       {""}, {""}, {""},
  253.       {"ISO-IR-87", ei_jisx0208},
  254.       {""}, {""}, {""}, {""},
  255.       {"WINDOWS-1253", ei_cp1253},
  256.       {"CSISO2022JP", ei_iso2022_jp},
  257.       {""}, {""},
  258.       {"EUCCN", ei_euc_cn},
  259.       {"MAC", ei_mac_roman},
  260.       {"EUC-CN", ei_euc_cn},
  261.       {""}, {""},
  262.       {"CP866", ei_cp866},
  263.       {"L6", ei_iso8859_10},
  264.       {""}, {""}, {""}, {""}, {""}, {""},
  265.       {"ISO-IR-148", ei_iso8859_9},
  266.       {"CSASCII", ei_ascii},
  267.       {""}, {""},
  268.       {"CP1250", ei_cp1250},
  269.       {"CSISO2022JP2", ei_iso2022_jp2},
  270.       {""}, {""}, {""}, {""}, {""}, {""}, {""},
  271.       {"L5", ei_iso8859_9},
  272.       {""}, {""}, {""},
  273.       {"X0201", ei_jisx0201},
  274.       {""}, {""}, {""}, {""},
  275.       {"CSSHIFTJIS", ei_sjis},
  276.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  277.       {"LATIN1", ei_iso8859_1},
  278.       {""}, {""},
  279.       {"CP1251", ei_cp1251},
  280.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  281.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  282.       {""}, {""}, {""}, {""}, {""}, {""}, {""},
  283.       {"ISO-IR-127", ei_iso8859_6},
  284.       {""}, {""}, {""}, {""}, {""}, {""},
  285.       {"MACCROATIAN", ei_mac_croatian},
  286.       {""}, {""}, {""},
  287.       {"MS-ARAB", ei_cp1256},
  288.       {""}, {""}, {""},
  289.       {"ISO-IR-203", ei_iso8859_15},
  290.       {""}, {""}, {""}, {""}, {""}, {""}, {""},
  291.       {"ISO-IR-57", ei_iso646_cn},
  292.       {""}, {""}, {""}, {""}, {""}, {""}, {""},
  293.       {"LATIN6", ei_iso8859_10},
  294.       {""}, {""},
  295.       {"CP1256", ei_cp1256},
  296.       {"TCVN-5712", ei_tcvn},
  297.       {""}, {""}, {""},
  298.       {"MACHEBREW", ei_mac_hebrew},
  299.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  300.       {"US-ASCII", ei_ascii},
  301.       {""}, {""}, {""},
  302.       {"ISO-8859-8", ei_iso8859_8},
  303.       {""},
  304.       {"CSISO2022CN", ei_iso2022_cn},
  305.       {""}, {""}, {""}, {""}, {""}, {""}, {""},
  306.       {"UCS-2BE", ei_ucs2be},
  307.       {""}, {""}, {""}, {""},
  308.       {"MACGREEK", ei_mac_greek},
  309.       {"CSVISCII", ei_viscii},
  310.       {""}, {""},
  311.       {"LATIN5", ei_iso8859_9},
  312.       {""}, {""},
  313.       {"CP1255", ei_cp1255},
  314.       {""}, {""}, {""},
  315.       {"L7", ei_iso8859_13},
  316.       {""},
  317.       {"ISO-IR-157", ei_iso8859_10},
  318.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  319.       {""}, {""}, {""},
  320.       {"L3", ei_iso8859_3},
  321.       {""}, {""}, {""}, {""}, {""},
  322.       {"UTF-16", ei_utf16},
  323.       {""}, {""},
  324.       {"ISO-8859-2", ei_iso8859_2},
  325.       {"WINDOWS-1254", ei_cp1254},
  326.       {"MS_KANJI", ei_sjis},
  327.       {"MACUKRAINE", ei_mac_ukraine},
  328.       {""}, {""}, {""},
  329.       {"VISCII1.1-1", ei_viscii},
  330.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  331.       {"CSMACINTOSH", ei_mac_roman},
  332.       {""}, {""},
  333.       {"TCVN5712-1", ei_tcvn},
  334.       {""},
  335.       {"GEORGIAN-PS", ei_georgian_ps},
  336.       {""}, {""}, {""}, {""}, {""},
  337.       {"GB2312", ei_euc_cn},
  338.       {""}, {""}, {""}, {""}, {""},
  339.       {"SHIFT_JIS", ei_sjis},
  340.       {""}, {""}, {""}, {""}, {""}, {""}, {""},
  341.       {"JOHAB", ei_johab},
  342.       {""}, {""}, {""}, {""},
  343.       {"KOI8-U", ei_koi8_u},
  344.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  345.       {""},
  346.       {"ISO646-JP", ei_iso646_jp},
  347.       {""},
  348.       {"ISO-8859-1", ei_iso8859_1},
  349.       {""},
  350.       {"KOI8-RU", ei_koi8_ru},
  351.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  352.       {"CP1361", ei_johab},
  353.       {""}, {""},
  354.       {"GB18030", ei_gb18030},
  355.       {""}, {""}, {""},
  356.       {"CSISOLATIN2", ei_iso8859_2},
  357.       {""},
  358.       {"WINBALTRIM", ei_cp1257},
  359.       {""}, {""}, {""}, {""}, {""},
  360.       {"ISO-8859-10", ei_iso8859_10},
  361.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  362.       {""}, {""}, {""}, {""}, {""},
  363.       {"CSIBM866", ei_cp866},
  364.       {""}, {""}, {""}, {""}, {""},
  365.       {"ARABIC", ei_iso8859_6},
  366.       {"CSISOLATINHEBREW", ei_iso8859_8},
  367.       {"BIG5", ei_ces_big5},
  368.       {""},
  369.       {"BIG-5", ei_ces_big5},
  370.       {""}, {""}, {""}, {""}, {""}, {""}, {""},
  371.       {"ISO-8859-6", ei_iso8859_6},
  372.       {""}, {""}, {""}, {""}, {""},
  373.       {"UCS-2LE", ei_ucs2le},
  374.       {""},
  375.       {"MACTURKISH", ei_mac_turkish},
  376.       {""}, {""}, {""}, {""}, {""}, {""},
  377.       {"UNICODE-1-1", ei_ucs2be},
  378.       {""}, {""}, {""},
  379.       {"CSISOLATIN1", ei_iso8859_1},
  380.       {""},
  381.       {"BIGFIVE", ei_ces_big5},
  382.       {"IBM367", ei_ascii},
  383.       {"BIG-FIVE", ei_ces_big5},
  384.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  385.       {""}, {""},
  386.       {"UCS-2-INTERNAL", ei_ucs2internal},
  387.       {"UHC", ei_cp949},
  388.       {""}, {""}, {""},
  389.       {"ISO-8859-5", ei_iso8859_5},
  390.       {""}, {""}, {""},
  391.       {"CSEUCTW", ei_euc_tw},
  392.       {""}, {""},
  393.       {"UTF-16BE", ei_utf16be},
  394.       {""}, {""}, {""},
  395.       {"L4", ei_iso8859_4},
  396.       {""}, {""}, {""}, {""}, {""},
  397.       {"ISO-8859-16", ei_iso8859_16},
  398.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  399.       {"UCS-4-SWAPPED", ei_ucs4swapped},
  400.       {"ISO646-CN", ei_iso646_cn},
  401.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  402.       {""},
  403.       {"CSISOLATIN6", ei_iso8859_10},
  404.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  405.       {""},
  406.       {"CSEUCKR", ei_euc_kr},
  407.       {"CSUNICODE", ei_ucs2},
  408.       {""}, {""},
  409.       {"TIS620.2533-0", ei_tis620},
  410.       {""}, {""},
  411.       {"ISO-8859-15", ei_iso8859_15},
  412.       {""},
  413.       {"LATIN7", ei_iso8859_13},
  414.       {""}, {""},
  415.       {"CP1257", ei_cp1257},
  416.       {""}, {""}, {""}, {""}, {""}, {""},
  417.       {"TIS620.2533-1", ei_tis620},
  418.       {"UTF-7", ei_utf7},
  419.       {"TCVN5712-1:1993", ei_tcvn},
  420.       {""}, {""}, {""}, {""}, {""}, {""}, {""},
  421.       {"CSISOLATIN5", ei_iso8859_9},
  422.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  423.       {"LATIN3", ei_iso8859_3},
  424.       {""}, {""},
  425.       {"CP1253", ei_cp1253},
  426.       {""}, {""}, {""}, {""}, {""}, {""}, {""},
  427.       {"CP950", ei_cp950},
  428.       {"ISO-IR-14", ei_iso646_jp},
  429.       {""}, {""},
  430.       {"TIS620.2529-1", ei_tis620},
  431.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  432.       {""},
  433.       {"CN-GB-ISOIR165", ei_isoir165},
  434.       {"CSISO87JISX0208", ei_jisx0208},
  435.       {""}, {""}, {""}, {""}, {""}, {""},
  436.       {"ISO646-US", ei_ascii},
  437.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  438.       {""},
  439.       {"CSISOLATINARABIC", ei_iso8859_6},
  440.       {""}, {""},
  441.       {"GEORGIAN-ACADEMY", ei_georgian_academy},
  442.       {""}, {""}, {""}, {""},
  443.       {"MACCENTRALEUROPE", ei_mac_centraleurope},
  444.       {"EXTENDED_UNIX_CODE_PACKED_FORMAT_FOR_JAPANESE", ei_euc_jp},
  445.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  446.       {""}, {""}, {""},
  447.       {"UNICODE-1-1-UTF-7", ei_utf7},
  448.       {""}, {""}, {""}, {""}, {""},
  449.       {"MULELAO-1", ei_mulelao},
  450.       {""}, {""}, {""}, {""}, {""}, {""}, {""},
  451.       {"CSHALFWIDTHKATAKANA", ei_jisx0201},
  452.       {""}, {""},
  453.       {"UTF-16LE", ei_utf16le},
  454.       {""}, {""},
  455.       {"ECMA-114", ei_iso8859_6},
  456.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  457.       {""}, {""},
  458.       {"CSEUCPKDFMTJAPANESE", ei_euc_jp},
  459.       {""},
  460.       {"BIG5HKSCS", ei_big5hkscs},
  461.       {""}, {""}, {""},
  462.       {"CSBIG5", ei_ces_big5},
  463.       {""},
  464.       {"CN-BIG5", ei_ces_big5},
  465.       {"ELOT_928", ei_iso8859_7},
  466.       {"MACICELAND", ei_mac_iceland},
  467.       {""},
  468.       {"UCS-4BE", ei_ucs4be},
  469.       {""},
  470.       {"HZ-GB-2312", ei_hz},
  471.       {""}, {""},
  472.       {"CP367", ei_ascii},
  473.       {""}, {""}, {""},
  474.       {"CSISOLATINGREEK", ei_iso8859_7},
  475.       {"CP932", ei_cp932},
  476.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  477.       {"CSUNICODE11", ei_ucs2be},
  478.       {""},
  479.       {"MACARABIC", ei_mac_arabic},
  480.       {""}, {""}, {""}, {""}, {""}, {""},
  481.       {"UNICODELITTLE", ei_ucs2le},
  482.       {""}, {""}, {""},
  483.       {"CN-GB", ei_euc_cn},
  484.       {"JIS_X0208", ei_jisx0208},
  485.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  486.       {""}, {""},
  487.       {"CSISO159JISX02121990", ei_jisx0212},
  488.       {"IBM819", ei_iso8859_1},
  489.       {""}, {""},
  490.       {"ISO-8859-7", ei_iso8859_7},
  491.       {"ISO-10646-UCS-2", ei_ucs2},
  492.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  493.       {""},
  494.       {"CP1133", ei_cp1133},
  495.       {"CSISO14JISC6220RO", ei_iso646_jp},
  496.       {"JIS_C6220-1969-RO", ei_iso646_jp},
  497.       {""}, {""}, {""}, {""}, {""}, {""}, {""},
  498.       {"KSC_5601", ei_ksc5601},
  499.       {""}, {""}, {""}, {""}, {""}, {""}, {""},
  500.       {"ISO-8859-3", ei_iso8859_3},
  501.       {"ISO_8859-8", ei_iso8859_8},
  502.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  503.       {"IBM-CP1133", ei_cp1133},
  504.       {""}, {""},
  505.       {"ISO-IR-109", ei_iso8859_3},
  506.       {""}, {""},
  507.       {"MS-CYRL", ei_cp1251},
  508.       {""}, {""},
  509.       {"JIS_X0212", ei_jisx0212},
  510.       {""}, {""},
  511.       {"ISO_8859-8:1988", ei_iso8859_8},
  512.       {""}, {""}, {""}, {""}, {""}, {""}, {""},
  513.       {"WINDOWS-874", ei_cp874},
  514.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  515.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  516.       {""},
  517.       {"CP936", ei_ces_gbk},
  518.       {"ISO_8859-2", ei_iso8859_2},
  519.       {""}, {""}, {""}, {""},
  520.       {"JIS_X0208-1990", ei_jisx0208},
  521.       {"ISO-8859-13", ei_iso8859_13},
  522.       {""}, {""}, {""}, {""}, {""}, {""},
  523.       {"JIS_X0201", ei_jisx0201},
  524.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  525.       {""}, {""},
  526.       {"CSISOLATINCYRILLIC", ei_iso8859_5},
  527.       {""},
  528.       {"ISO-IR-159", ei_jisx0212},
  529.       {"CSISOLATIN3", ei_iso8859_3},
  530.       {""}, {""}, {""},
  531.       {"CSGB2312", ei_euc_cn},
  532.       {""}, {""},
  533.       {"UCS-4LE", ei_ucs4le},
  534.       {""}, {""}, {""},
  535.       {"UCS-4", ei_ucs4},
  536.       {""}, {""}, {""}, {""}, {""},
  537.       {"JIS_X0212-1990", ei_jisx0212},
  538.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  539.       {""}, {""}, {""}, {""}, {""},
  540.       {"ISO_8859-1", ei_iso8859_1},
  541.       {""}, {""}, {""},
  542.       {"UCS-4-INTERNAL", ei_ucs4internal},
  543.       {""}, {""}, {""},
  544.       {"CSUNICODE11UTF7", ei_utf7},
  545.       {""}, {""}, {""}, {""}, {""}, {""}, {""},
  546.       {"ISO_8859-5:1988", ei_iso8859_5},
  547.       {"ISO_8859-10:1992", ei_iso8859_10},
  548.       {""}, {""}, {""}, {""},
  549.       {"CSISO58GB231280", ei_gb2312},
  550.       {""}, {""}, {""}, {""},
  551.       {"ISO_8859-10", ei_iso8859_10},
  552.       {""}, {""}, {""},
  553.       {"GB_2312-80", ei_gb2312},
  554.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  555.       {""},
  556.       {"JIS_X0212.1990-0", ei_jisx0212},
  557.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  558.       {""},
  559.       {"JISX0201-1976", ei_jisx0201},
  560.       {""}, {""}, {""},
  561.       {"ISO_8859-15:1998", ei_iso8859_15},
  562.       {"LATIN4", ei_iso8859_4},
  563.       {""},
  564.       {"ISO_8859-6", ei_iso8859_6},
  565.       {"CP1254", ei_cp1254},
  566.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  567.       {""}, {""}, {""}, {""}, {""}, {""},
  568.       {"ISO_8859-16:2000", ei_iso8859_16},
  569.       {""},
  570.       {"CP819", ei_iso8859_1},
  571.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  572.       {""}, {""}, {""},
  573.       {"ISO-IR-179", ei_iso8859_13},
  574.       {""}, {""}, {""}, {""}, {""}, {""}, {""},
  575.       {"ISO_8859-5", ei_iso8859_5},
  576.       {""}, {""}, {""},
  577.       {"CP874", ei_cp874},
  578.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  579.       {""}, {""}, {""},
  580.       {"ISO_8859-16", ei_iso8859_16},
  581.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  582.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  583.       {""},
  584.       {"ISO-IR-144", ei_iso8859_5},
  585.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  586.       {""}, {""}, {""},
  587.       {"JIS_X0208-1983", ei_jisx0208},
  588.       {""}, {""}, {""}, {""},
  589.       {"ISO_646.IRV:1991", ei_ascii},
  590.       {"ISO_8859-3:1988", ei_iso8859_3},
  591.       {"ISO_8859-15", ei_iso8859_15},
  592.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  593.       {"ISO_8859-2:1987", ei_iso8859_2},
  594.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  595.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  596.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  597.       {""}, {""},
  598.       {"ISO_8859-1:1987", ei_iso8859_1},
  599.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  600.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  601.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  602.       {""}, {""},
  603.       {"ISO_8859-6:1987", ei_iso8859_6},
  604.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  605.       {"GB_1988-80", ei_iso646_cn},
  606.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  607.       {""}, {""}, {""},
  608.       {"ISO-8859-4", ei_iso8859_4},
  609.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  610.       {""},
  611.       {"ISO-10646-UCS-4", ei_ucs4},
  612.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  613.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  614.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  615.       {"ISO-IR-149", ei_ksc5601},
  616.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  617.       {""}, {""}, {""},
  618.       {"UNICODEBIG", ei_ucs2be},
  619.       {""}, {""}, {""}, {""}, {""},
  620.       {"ISO-8859-14", ei_iso8859_14},
  621.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  622.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  623.       {""}, {""}, {""},
  624.       {"CSISOLATIN4", ei_iso8859_4},
  625.       {""}, {""}, {""}, {""}, {""}, {""}, {""},
  626.       {"ISO_8859-4:1988", ei_iso8859_4},
  627.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  628.       {""}, {""}, {""}, {""},
  629.       {"ISO_8859-7", ei_iso8859_7},
  630.       {""}, {""}, {""}, {""}, {""}, {""},
  631.       {"CYRILLIC", ei_iso8859_5},
  632.       {""}, {""}, {""}, {""},
  633.       {"ISO-IR-199", ei_iso8859_14},
  634.       {""}, {""}, {""}, {""}, {""},
  635.       {"CSKSC56011987", ei_ksc5601},
  636.       {""}, {""},
  637.       {"ISO_8859-7:1987", ei_iso8859_7},
  638.       {""}, {""}, {""}, {""}, {""},
  639.       {"ISO_8859-14:1998", ei_iso8859_14},
  640.       {""}, {""},
  641.       {"ISO_8859-3", ei_iso8859_3},
  642.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  643.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  644.       {"ISO-8859-9", ei_iso8859_9},
  645.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  646.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  647.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  648.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  649.       {"ANSI_X3.4-1968", ei_ascii},
  650.       {""},
  651.       {"ISO_8859-13", ei_iso8859_13},
  652.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  653.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  654.       {""}, {""}, {""}, {""}, {""},
  655.       {"CSUCS4", ei_ucs4},
  656.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  657.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  658.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  659.       {""}, {""}, {""}, {""}, {""}, {""},
  660.       {"CSISO57GB1988", ei_iso646_cn},
  661.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  662.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  663.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  664.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  665.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  666.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  667.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  668.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  669.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  670.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  671.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  672.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  673.       {""}, {""}, {""}, {""}, {""}, {""}, {""},
  674.       {"KS_C_5601-1987", ei_ksc5601},
  675.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  676.       {""}, {""}, {""}, {""}, {""}, {""}, {""},
  677.       {"CSPC850MULTILINGUAL", ei_cp850},
  678.       {""}, {""}, {""}, {""},
  679.       {"MACCYRILLIC", ei_mac_cyrillic},
  680.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  681.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  682.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  683.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  684.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  685.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  686.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  687.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  688.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  689.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  690.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  691.       {""}, {""}, {""}, {""}, {""}, {""}, {""},
  692.       {"ISO_8859-4", ei_iso8859_4},
  693.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  694.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  695.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  696.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  697.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  698.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  699.       {""}, {""},
  700.       {"ISO_8859-14", ei_iso8859_14},
  701.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  702.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  703.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  704.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  705.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  706.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  707.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  708.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  709.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  710.       {""}, {""},
  711.       {"KS_C_5601-1989", ei_ksc5601},
  712.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  713.       {"ISO_8859-9", ei_iso8859_9},
  714.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  715.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  716.       {""}, {""},
  717.       {"ISO_8859-9:1989", ei_iso8859_9},
  718.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  719.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  720.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  721.       {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
  722.       {""},
  723.       {"CP949", ei_cp949}
  724.     };
  725.  
  726.   if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
  727.     {
  728.       register int key = aliases_hash (str, len);
  729.  
  730.       if (key <= MAX_HASH_VALUE && key >= 0)
  731.         {
  732.           register const char *s = wordlist[key].name;
  733.  
  734.           if (*str == *s && !strcmp (str + 1, s + 1))
  735.             return &wordlist[key];
  736.         }
  737.     }
  738.   return 0;
  739. }
  740.